<!DOCTYPE html>
<html lang="en"
      xmlns:th="http://www.thymeleaf.org"
      xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">

<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h1>登录成功</h1>
<button type="button" shiro:authenticated="true">
    权限控制
</button><br><br>

<shiro:guest>
    <span>用户没有身份验证时显示相应信息，即游客访问信息。</span><br><br>
</shiro:guest>

<shiro:user>
    <span>用户已经身份验证/记住我登录后显示相应的信息。</span><br><br>
</shiro:user>

<shiro:authenticated>
    <span>用户已经身份验证通过，即 Subject.login 登录成功，不是记住我登录的。</span><br><br>
</shiro:authenticated>
<shiro:notAuthenticated>
    <span>用户已经身份验证未通过，即没有调用 Subject.login 进行登录，包括记住我自动登录的也
        属于未进行身份验证。</span><br><br>
</shiro:notAuthenticated>

<!--<shiro:principal property="username">-->
<!--    <span>相当于((User)Subject.getPrincipals()).getUsername()。</span><br><br>-->
<!--</shiro:principal>-->

<shiro:lacksPermission name="admin:create">
    <span>如果当前 Subject 没有权限将显示 body 体内容。</span><br><br>
</shiro:lacksPermission>

<shiro:hasRole name="admin">
    <button type="button">
        有 admin 角色
    </button><br><br>
</shiro:hasRole>
<shiro:hasRole name="user">
    <button type="button">
        有 user 角色
    </button><br><br>
</shiro:hasRole>

<shiro:hasAnyRoles name="admin,user">
    <span>如果当前 Subject 有任意一个角色（或的关系）将显示 body 体内容。</span><br><br>
</shiro:hasAnyRoles>

<shiro:lacksRole name="abc">
    <span>如果当前 Subject 没有角色将显示 body 体内容。</span><br><br>
</shiro:lacksRole>

<shiro:hasPermission name="admin:add">
    <span>如果当前 Subject 有权限将显示 body 体内容</span><br><br>
</shiro:hasPermission>

<shiro:hasAnyPermissions name="admin:add,admin:update">
    <span>如果当前 Subject 有任意一个权限（或的关系）将显示 body 体内容。</span><br><br>
</shiro:hasAnyPermissions>

<shiro:hasAllRoles name="admin,user">
    <span>必须拥有指定的全选全部角色</span><br><br>
</shiro:hasAllRoles>

<shiro:hasAllPermissions name="admin:add,admin:update">
    <span>必须拥有指定的全选全部权限</span><br><br>
</shiro:hasAllPermissions>



</body>
</html>